/**Pacote para conexão de Banco de Dados e impressão do Relatório*/
package conexao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.PreparedStatement;

/**Realiza a conexão com Banco de Dados*/
public class ConexaoBD {
	public static Connection con =null;
	public static Statement stmt=null;
	public static PreparedStatement pstm=null;
	public static ResultSet rs=null;
	public static ResultSetMetaData rsmd=null;

	private static final String DRIVER="com.mysql.jdbc.Driver";
	private static final String DATABASE="supertropa";
        
	/** String que compreende a localização do banco.*/
        public static String URL="jdbc:mysql://localhost:3306/"+DATABASE;
        
        /** Login e Senha do banco de dados.*/
	public static final String USUARIO = "root";
	public static final String SENHA = "root";

	public static boolean getConnection(){
		try{
			Class.forName(DRIVER);
			con=DriverManager.getConnection(URL, USUARIO, SENHA);
			stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, 
					ResultSet.CONCUR_UPDATABLE);

			return true;
		}
		catch(ClassNotFoundException erro){
			System.out.println(erro);
			return false;			
		}
		catch(SQLException erro){
			System.out.println(erro);
			return false;		
		}
	}

	public static Connection getConexao() {
		try {
			Class.forName(DRIVER);
			con = DriverManager.getConnection(URL, USUARIO, SENHA);
		} catch (ClassNotFoundException e) {
			System.out.println ("Driver não encontrado: " + e.getMessage());
		} catch (SQLException e) {
			System.out.println ("Erro abrindo conex�o: " + e.getMessage());
		}
		return con;
	}
	public static void closeConnection(){
		try{
			if (rs!=null)
				rs.close();
			if (stmt!=null)
				stmt.close();
			if (con!=null)
				con.close();
			System.out.println("Conexão fechadao com sucesso");
		}

		catch(SQLException erro){
			System.out.println(erro);
		}	
	}
	public static void executaSelect(String sql){
		try{
			rs=stmt.executeQuery(sql);
		}
		catch(SQLException erro){
			System.out.println(erro);
		}
	}

	public static int executaInsertUpdateDelete(String sql){
		int resposta=0; 
		try{
			resposta=stmt.executeUpdate(sql);
		}
		catch(SQLException erro){
			System.out.println(erro);
		}
		return resposta;
	}

        
}

